#pragma once
#include "DXAMLCommon.h"


class IPALThreadSafeDownloadCallback
{

public:
	virtual XUINT32 AddRef() = 0;
	virtual XUINT32 Release() = 0;
	virtual void GotHeaders(CXString *pstrMime, unsigned int bRedirected, CXString *pstrFinalUrl, CXString *pstrHeaders, unsigned __int64 cbContentLength) = 0;
	virtual void GotData(unsigned int cbData, char *pData) = 0;
	virtual void EndResponse() = 0;
	virtual void GotError(int xrError) = 0;
	virtual HRESULT PromptForCredentials(CXString *pstrArea, unsigned int bSecure, CXString **ppstrUsername, CXString **ppstrPassword, CXString **ppstrDomain) = 0;
	virtual void FinishedUploadDataWrite() = 0;
};